Data-related assets include images, videos, and music files which are created and downloaded to personal computer (PC) storage for personal enjoyment. In general, today's data-related assets are often in a digital format (i.e., “digital assets”) even when they don't originate as such. Typically, these digital assets are accessed only when needed for viewing, listening or playing. Various devices and internet services provide and utilize these assets, including Personal Digital Assistants (PDAs), digital cameras, personal computers (PCs), media servers, terminals and web sites. Collections of assets stored on these devices or service providers are generally loosely coupled or not coupled at all and current synchronization processes occur typically between two devices, for instance a media player and a PC.
Many existing solutions provide an aggregated view of a distributed digital asset collection by replicating each asset (i.e., by duplicating every data file associated with the asset) on every node. Syncplicity, Sharpcast's SugarSync and Microsoft's Live Mesh are examples of current market offerings using this replicating methodology. One shortcoming of such systems is their low storage efficiency. Additional storage capacity is required on every node as new assets are added to other nodes, regardless of the node's need for the stored asset.
Another shortcoming of the above systems, which replicate new assets on every node, is a pronounced user experience impact while the user waits for an asset to be uploaded. Since many common workflows require the asset interest to be uploaded (e.g. sharing or printing), the user experience is substantially delayed while the upload operation is completed.
Yet another shortcoming of conventional systems relates to the ability to restrict access to a previously shared asset. Once a shared asset has been shared with another user the asset is also replicated on the recipient's node. Most existing solutions do not allow the initial sharer to delete the replica when a new, identical replica of the asset exists on the recipient's node or computer.
Other conventional solutions provide an aggregated view of a distributed digital asset collection by enabling each node that stores assets to broadcast to a requesting node a version of the requested asset. One example is Orb Systems. A client application, installed on every point of access node, streams the requested assets on to other nodes per requested requirements (e.g., resolution criteria). A shortcoming of this type of system is the inability to access when a point of access is not connected to the system (i.e., offline status). Furthermore, an offline node is virtually inoperable providing only value related to the assets stored locally. Yet, another limitation is that if the node that is storing an asset is offline, none of the other nodes in the other system will be aware of the existence of the stored asset.
Another shortcoming of existing systems is their limited ability to recognize that a newly introduced asset to the collection may already be present; therefore, the system commonly produces an unnecessary duplicate in the collection, which impacts the system by requiring additional resources to operate (e.g., storage space or processing time). It also impacts the user, who might not be aware that the system contains multiple copies of the same asset.
Finally, another shortcoming of conventional aggregated views of a distributed digital asset collection is that the information created by the owner while organizing her assets locally (e.g. Windows folder system to organize pictures) may be either destroyed or ignored.
Accordingly, there remains a need in the art to overcome the deficiencies and limitations associated with conventional distributed digital asset collection systems that exist today.